package t912

func sortArray(nums []int) []int {

	length := len(nums)
	if length == 1 {
		return nums
	}
	//增量数
	cnt := length
	for cnt/2 != 0 {
		cnt = cnt / 2
		for i := cnt; i < length; i++ {
			//
			for j := i - cnt; j >= 0; j -= cnt {
				//fmt.Printf("%d %d \n", j, j+cnt)
				if nums[j] > nums[j+cnt] {
					nums[j], nums[j+cnt] = nums[j+cnt], nums[j]
				}
			}
		}
		//fmt.Println()
	}

	//fmt.Println(nums)

	return nums

}

//func sortArray(nums []int) []int {
//
//	for i, num := range nums {
//		if i == 0 {
//			continue
//		}
//		for j := i; j > 0; j-- {
//			if num < nums[j-1] {
//				nums[j], nums[j-1] = nums[j-1], nums[j]
//			} else {
//				break
//			}
//
//		}
//	}
//	return nums
//
//}
